﻿using System;
using System.Collections.Generic;

namespace YJKArch.ImportStructureProject.ImportObjects
{
	public class RectSectionMapping
	{
		public string FamilyName
		{
			get
			{
				return this.m_FamilyName;
			}
		}

		public List<string> SizeProperties
		{
			get
			{
				return this.m_SizeProperties;
			}
		}

		public int WidthNameIndex
		{
			get
			{
				return this.m_WidthNameIndex;
			}
			set
			{
				this.m_WidthNameIndex = value;
			}
		}

		public int HeightNameIndex
		{
			get
			{
				return this.m_HeightNameIndex;
			}
			set
			{
				this.m_HeightNameIndex = value;
			}
		}

		public bool IsSet
		{
			get
			{
				return this.m_HeightNameIndex != -1 && this.m_WidthNameIndex != -1;
			}
		}

		public RectSectionMapping(RectSectionMapping rhs)
		{
			this.m_FamilyName = rhs.m_FamilyName;
			this.m_SizeProperties = rhs.m_SizeProperties;
			this.m_WidthNameIndex = rhs.m_WidthNameIndex;
			this.m_HeightNameIndex = rhs.m_HeightNameIndex;
		}

		public RectSectionMapping(string familyName, List<string> sizeProperties, int widthNameIndex, int heightNameIndex)
		{
			this.m_FamilyName = familyName;
			this.m_SizeProperties = sizeProperties;
			this.m_WidthNameIndex = widthNameIndex;
			this.m_HeightNameIndex = heightNameIndex;
		}

		private string m_FamilyName;

		private List<string> m_SizeProperties = new List<string>();

		private int m_WidthNameIndex = -1;

		private int m_HeightNameIndex = -1;
	}
}
